home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / g_man / cat3 / OpenGL / glxmakecurrent.z / glxmakecurrent
Encoding:
Text File  |  2002-10-03  |  8.5 KB  |  133 lines

  1.  
  2.  
  3.  
  4. ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt((((3333GGGG))))          OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX          ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt - attach a GLX context to a window or a GLX pixmap
  10.  
  11.  
  12. CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  13.      Bool ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt( Display *_d_p_y,
  14.                           GLXDrawable _d_r_a_w_a_b_l_e,
  15.                           GLXContext _c_t_x )
  16.  
  17.  
  18. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  19.      _d_p_y       Specifies the connection to the X server.
  20.  
  21.      _d_r_a_w_a_b_l_e  Specifies a GLX drawable.  Must be either an X window ID or a
  22.                GLX pixmap ID.
  23.  
  24.      _c_t_x       Specifies a GLX rendering context that is to be attached to
  25.                _d_r_a_w_a_b_l_e.
  26.  
  27. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  28.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt does two things:  It makes _c_t_x the current GLX rendering
  29.      context of the calling thread, replacing the previously current context
  30.      if there was one, and it attaches _c_t_x to a GLX drawable, either a window
  31.      or a GLX pixmap.  As a result of these two actions, subsequent GL
  32.      rendering calls use rendering context _c_t_x to modify GLX drawable _d_r_a_w_a_b_l_e
  33.      (for reading and writing).  Because ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt always replaces the
  34.      current rendering context with _c_t_x, there can be only one current context
  35.      per thread.
  36.  
  37.      Pending commands to the previous context, if any, are flushed before it
  38.      is released.
  39.  
  40.      The first time _c_t_x is made current to any thread, its viewport is set to
  41.      the full size of _d_r_a_w_a_b_l_e.  Subsequent calls by any thread to
  42.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt with _c_t_x have no effect on its viewport.
  43.  
  44.      To release the current context without assigning a new one, call
  45.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt with _d_r_a_w_a_b_l_e set NNNNoooonnnneeee and _c_t_x set to NNNNUUUULLLLLLLL
  46.  
  47.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt returns TTTTrrrruuuueeee if it is successful, FFFFaaaallllsssseeee otherwise.  If
  48.      FFFFaaaallllsssseeee is returned, the previously current rendering context and drawable
  49.      (if any) remain unchanged.
  50.  
  51. NNNNOOOOTTTTEEEESSSS
  52.      A _p_r_o_c_e_s_s is a single-execution environment, implemented in a single
  53.      address space, consisting of one or more threads.
  54.  
  55.      A _t_h_r_e_a_d is one of a set of subprocesses that share a single address
  56.      space, but maintain separate program counters, stack spaces, and other
  57.      related global data.  A _t_h_r_e_a_d that is the only member of its subprocess
  58.      group is equivalent to a _p_r_o_c_e_s_s.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt((((3333GGGG))))          OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX          ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt((((3333GGGG))))
  71.  
  72.  
  73.  
  74. EEEERRRRRRRROOOORRRRSSSS
  75.      BBBBaaaaddddMMMMaaaattttcccchhhh is generated if _d_r_a_w_a_b_l_e was not created with the same X screen
  76.      and visual as _c_t_x.  It is also generated if _d_r_a_w_a_b_l_e is NNNNoooonnnneeee and _c_t_x is
  77.      not NNNNUUUULLLLLLLL.
  78.  
  79.      BBBBaaaaddddAAAAcccccccceeeessssssss is generated if _c_t_x was current to another thread at the time
  80.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt was called.
  81.  
  82.      GGGGLLLLXXXXBBBBaaaaddddDDDDrrrraaaawwwwaaaabbbblllleeee is generated if _d_r_a_w_a_b_l_e is not a valid GLX drawable.
  83.  
  84.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxtttt is generated if _c_t_x is not a valid GLX context.
  85.  
  86.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxttttSSSSttttaaaatttteeee is generated if ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt is called between the
  87.      execution of ggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of ggggllllEEEEnnnndddd.
  88.  
  89.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxttttSSSSttttaaaatttteeee is also generated if the rendering context current to
  90.      the calling thread has GL renderer state GGGGLLLL____FFFFEEEEEEEEDDDDBBBBAAAACCCCKKKK or GGGGLLLL____SSSSEEEELLLLEEEECCCCTTTT.
  91.  
  92.      GGGGLLLLXXXXBBBBaaaaddddCCCCuuuurrrrrrrreeeennnnttttWWWWiiiinnnnddddoooowwww is generated if there are pending GL commands for the
  93.      previous context and the current drawable is a window that is no longer
  94.      valid.
  95.  
  96.      BBBBaaaaddddAAAAlllllllloooocccc may be generated if the server has delayed allocation of
  97.      ancillary buffers until ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt is called, only to find that it
  98.      has insufficient resources to complete the allocation.
  99.  
  100.  
  101. MMMMAAAACCCCHHHHIIIINNNNEEEE DDDDEEEEPPPPEEEENNNNDDDDEEEENNNNCCCCIIIIEEEESSSS
  102.      On RRRReeeeaaaalllliiiittttyyyyEEEEnnnnggggiiiinnnneeee, RRRReeeeaaaalllliiiittttyyyyEEEEnnnnggggiiiinnnneeee2222, and VVVVTTTTXXXX, on IIIInnnnffffiiiinnnniiiitttteeeeRRRReeeeaaaalllliiiittttyyyy, on HHHHiiiigggghhhh
  103.      IIIImmmmppppaaaacccctttt and MMMMaaaaxxxxiiiimmmmuuuummmm IIIImmmmppppaaaacccctttt, on SSSSoooolllliiiidddd IIIImmmmppppaaaacccctttt systems, on OOOO2222 systems, and on
  104.      OOOOccccttttaaaannnneeee2222 VVVVPPPPrrrroooo systems, it is not possible to use a context for rendering
  105.      to both windows and pixmaps.
  106.  
  107.  
  108. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  109.      ggggllllXXXXCCCCrrrreeeeaaaatttteeeeCCCCoooonnnntttteeeexxxxtttt, ggggllllXXXXCCCCrrrreeeeaaaatttteeeeGGGGLLLLXXXXPPPPiiiixxxxmmmmaaaapppp ggggllllXXXXGGGGeeeettttCCCCuuuurrrrrrrreeeennnnttttCCCCoooonnnntttteeeexxxxtttt,
  110.      ggggllllXXXXGGGGeeeettttCCCCuuuurrrrrrrreeeennnnttttDDDDiiiissssppppllllaaaayyyy, ggggllllXXXXGGGGeeeettttCCCCuuuurrrrrrrreeeennnnttttDDDDrrrraaaawwwwaaaabbbblllleeee, ggggllllXXXXGGGGeeeettttCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddDDDDrrrraaaawwwwaaaabbbblllleeee,
  111.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCoooonnnntttteeeexxxxttttCCCCuuuurrrrrrrreeeennnntttt
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.